<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>

    <script>

        // 数组的常用方法
        //   includes(v)   判断数组中是否存在某个值，返回布尔值
        //   indexOf(v)    判断数组中是否存在某个值，如果存在返回下标，如果不存在，返回-1
        //   lastIndexOf(v)   最后一次出现的位置
        //   slice(i,j)       截取数组,从i开始，到j结束，包含i不包含j,返回新的数组
        //                     j可以超出数组的长度(截取完为止)
        //                     i和j都不写，表示截取数组中所有的值   
        //   join(f)   把数组变成字符串,默认以逗号分隔
        //   concat(arr)  拼接数组,返回新的数组

        //   splice(i,howmany要删除的数量,v1,v2,v3...)  添加/删除/替换数组中的值  ---- 会直接改变原数组 ， 返回被删除的数据(数组)

        var arr = [1,2,3,4,5,6,2] ;
        var res = arr.includes(2) ;
        console.log(res);

        var j = arr.indexOf(2) ;
        console.log(j);

        var j = arr.lastIndexOf(2) ;
        console.log(j);


        var arr2 = arr.slice(-3,60) ;   // i为负数时，倒着数
        console.log(arr2);

        var arr2 = arr.slice() ;   // 截取数组中所有的值
        console.log(arr2);


        var str = arr.join('') ;
        console.log(str);


        var arr3 = ['a' , 'b' , 'c'] ;
        var arr4 = arr.concat(arr3) ;
        console.log(arr4);


        // splice(i , howmany数量)  删除  第一个参数删除的位置(下标) ， 删除的个数  , 返回被删除的数据(数组)
        var res = arr.splice(1 , 2) ;
        console.log(arr);
        console.log(res);

        // splice(i , 0 , v1 , v2 , v3 ,...)  在指定的位置插入值  第一个参数是要插入的位置(下标) , 第二个参数是0，后面的参数是值要插入的值
        arr.splice(1,0,'a' , 'b') ;
        console.log(arr);

        // splice()  替换  // 在指定的位置上替换值,第一个参数是位置，第二个参数是要删除的数量，后面的参数表示要替换的值
        arr.splice(3 , 3 , 44,55,66) ;  
        console.log(arr);
        


    </script>
    
</body>
</html>